웹 개발

SecurityOps_01_보안 모니터링 대시보드

작성자 : Heehyeon Yoo|2026-01-13
# security-ops# DevSecOps# SIEM# monitoring# portfolio

개요

리드미 형식으로 정리한 프로젝트다.

Security Ops는 실제 운영 환경의 보안 상태를 실시간으로 모니터링하는 대시보드다.
DevSecOps 관점에서 자동화된 파이프라인을 설계하고 운영하는 데 초점을 뒀다.

💡 Public View에서는 민감 정보가 마스킹되어 있습니다.
관리자 로그인 시 상세 운영 데이터를 확인할 수 있습니다.
퍼블릭 페이지퍼블릭 페이지
관리자 페이지관리자 페이지

주요 기능

Infra Ops — 외부 공격표면 모니터링

기능설명
하이브리드 스캔SSH → Shodan → Nmap 4단계 폴백 전략
포트 변경 감지베이스라인 대비 Drift 자동 탐지
정책 기반 평가허용된 포트 외 오픈 시 Incident 생성
자동화GitHub Actions 6시간 주기 스케줄링
  • Jenkins 파이프라인은 서버 사양 문제로 이번에는 구현하지 못했다.

AI Ops — LLM 보안 모니터링

기능설명
Prompt Injection 탐지사전 정의된 Rule 기반 악성 입력 차단
실시간 로깅모든 사용자 쿼리 및 응답 기록
Severity 분류CRITICAL / HIGH / MEDIUM / LOW
통계 대시보드차단율, 에러율, 응답 속도 분석

Public/Private View 분리

항목Public (비로그인)Admin (로그인)
트래픽 수치Low / High (구간)정확한 숫자
IP 주소172.18.xxx.xxx전체 IP
로그 메시지60자 제한전체 표시
Export 기능숨김사용 가능

아키텍처

기술 스택

LayerTechnologies
FrontendNext.js 15, React 19, TypeScript, Tailwind CSS, Framer Motion
BackendNext.js API Routes, Python (Scanner)
InfrastructureOracle Cloud VM, Cloudflare CDN
CI/CDGitHub Actions, Vercel
SecurityhttpOnly Cookie Auth, JWT, Rate Limiting

구현 포인트

1. 하이브리드 스캔 전략

Oracle Cloud의 방화벽 제약이 커서 외부 스캔(Nmap)만으로는 정확한 포트 상태를 파악하기 어려웠습니다.
SSH 내부 스캔을 1순위로 두고, 실패 시 Shodan → Nmap → Mock 순으로 폴백하는 전략을 구현했습니다.

2. SIEM 스타일 로그 뷰어

실무 SOC 대시보드처럼 Severity, Rule ID, Action, Source IP 같은 핵심 필드를 표시했습니다.
레벨 필터링과 페이지네이션, JSON Export 기능도 같이 구현했습니다.

3. 보안 모범 사례 적용

  • httpOnly 쿠키로 XSS 토큰 탈취 방지
  • API 기반 인증 확인 (클라이언트에서 쿠키 직접 읽기 불가)
  • Public View 자동 마스킹으로 운영 데이터 노출 방지

4. 운영 자동화

  • GitHub Actions 6시간 주기 스케줄링
  • 스캔 결과 자동 커밋 및 대시보드 반영
  • 베이스라인 Drift 감지 및 Incident 생성

라이브 데모

Security Ops Dashboard →

표시되는 페이지는 Public View입니다.
민감 정보가 마스킹되어 있으며, 관리자 로그인 시 상세 데이터를 확인할 수 있습니다.

개선 계획

  1. Admin 응답 기능 — 로그 클릭 시 IP 차단, 사용자 밴 등 액션 버튼
  2. 실시간 갱신 — WebSocket 또는 30초 polling
  3. 알림 연동 — Slack/Discord 웹훅으로 Incident 알림